home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The X-Philes (2nd Revision)
/
The X-Philes Number 1 (1995).iso
/
xphiles
/
hp48_1
/
bclk
< prev
next >
Wrap
Internet Message Format
|
1995-03-31
|
31KB
From: john Latala <jrl@images1.waterloo.NCR.COM>
Subject: v04i004: bclk - Large digit clock display v1.0, Part01/01
Newsgroups: comp.sources.hp48
Organization: NCR Canada Ltd, Waterloo, Ontario, Canada.
Followup-To: comp.sys.hp48
Approved: spell@seq.uncwil.edu
Checksum: 1721112255 (verify with brik -cv)
Submitted-by: john Latala <jrl@images1.waterloo.NCR.COM>
Posting-number: Volume 4, Issue 4
Archive-name: bclk/part01
BEGIN_DOC bclk.doc
This directory contains two programs to display a digital clock on the
HP48s. The 'simple' one, CLK2, just displays the time in HH:MM format,
changing the display every minute. The fancy one, CLK1, uses the same
format HH:MM format as CLK2, but the minutes unit digit slowly rolls up.
Just like the odometer in your car or some clocks still do!
This is basically a '48 port of an old '28 program that I posted many
moons ago.
The program actually cheats by creating a GROB which if quite narrow,
but very tall, to store all the digits. To show the 'static' digits it
just takes chunks out of this GROB to build the screen display.
The messy part was getting the vertical scrolling correct. Especially
the 'odd' cases: HH:M9, HH:59, H9:59, and 23:59. The 23:59 case was one
I initially forgot when I first wrote the program. These weird cases
are the reason for the structure if the CSET variable.
The variable has four pieces, "01234567890" used for the units digits of
the hours and minutes, "0123450" used for the tens of minutes, "0120"
used for the tens of hours and "30" used for the units minutes at 23:59
Just run either CLK1 or CLK2. If the DIGITS variable doesn't exist then
it will be created. After that it will just be used. The DIGITS variable
is quite large, 2080 as reported by BYTES.
END_DOC
BEGIN_RDM bclk.rdm
[ I stuck these routines in the directory with the bclk
programs. This text was left for the explanation of the programs
included. You do not need to download these programs for bclk to
work. Only download bclk.asc. -chris ]
The routines call CHKARG, that checks the number and type of calling
arguments. They also use a routine called UTIME and reference a variable
called TNames from port 0.
I put the TNames variable into port 0 because it's used by a number of
other routines that I have and I wanted it out of the way (i.e. not in
the home directory). Basically it's just a list of strings giving a
human readable name to each variable type that the HP has:
-------------------- Start of :0:TNames --------------------
%%HP: T(3)A(D)F(.);
{ "Real" "Complex" "String" "RealArray" "ComplexArray" "List" "GlobalName"
"LocalName" "Program" "Algebraic" "Binary" "GraphicObj" "TaggedObj"
"UnitObj" "XLibrary" "Directory" "Library" "BackupObj" "BltInFnc" "BltInCmd"
"Type20" "Type21" "Type22" "Type23" "Type24" "Code" }
--------------------- End of :0:TNames ---------------------
The UTIME routine just takes a time in HH.MMSSTT format on the stack and
unpacks it into HH, MM, SS, TT.
-------------------- Start of UTIME --------------------
%%HP: T(3)A(D)F(.);
"D9D20E16329C2A2803A23013278BF1D6BB1DBBF13ABB13392020000000000000
10EEDA1C423233920200000000000001050FA176BA193632B213023E5"
--------------------- End of UTIME ---------------------
Finally CHKARG takes two arguments: a name and a list. The name is the
name of the calling routine and the argument list is a list showing the
expected types of arguments. If you had a routine TEST that took three
arguments: a directory, a GROB and a list you could code it like:
<<
'TEST' { DIR END GROB 1 1 00 { } } CHKARG
... body of TEST ...
>>
CHKARG will make sure that there are three arguments on the stack and
that their types are DIR, GROB and LIST. If the types don't match, or
there aren't enough arguments then CHKARG never returns, using DOERR to
display an informative error message.
-------------------- Start of CHKARG.ARC --------------------
%%HP: T(3)A(D)F(.);
"D9D20E16323CE2244CF14B2A2D5CE1AFE22D9D203CE2292CF168BC14563284E2
010859763268BC1279E192CF168BC147A20B213068BC1279E1387E1AFE22D9D2
044CF1ED2A290DA1E0CF1B0BC1ED2A292CF18B9C19C2A290DA1C58C11C432D6E
2070162776C6963747D6E204016277637D6E2040E616D656E16323CE22D6E207
0162776C69637478B9C1D6E204016277637D5CE1AFE22D9D20D6E2040E616D65
6C2A2011000A30274F6470276BA1D6E204016277637B0BC176BA1C2A20D00000
216277676BA13CE22D6E2040162776379C2A2D9AE1AFE22D9D20C2A207000037
76BA1B21305DF2233920100000000000001066BC176BA1C2A205100002020202
020202029C2A2D6E2040E616D6568B9C1C58C176BA1C2A20310000202E456564
60276BA1D6E2070162776C69637478B9C1B0BC176BA1933A1B21305BF22D9D20
9C2A2D6E2070162776C69637478B9C14B2A21C432D6E2030162776D6E2040162
77637D6E204046F6E656E16323C0323CE22D6E204016277637D6E20301627769
C2A290DA190DA1A9CF168BC1D6E2070162776C6963747D6E20301627766C7D16
8BC1D9AE1AFE22D9D20CFA20100384E206045E416D6563704B021C432D6E2080
162776E616D65637E1632D6E2040E616D656C2A2070000A376BA1D6E20301627
76B0BC176BA1C2A2031000A3027516E6470276BA1D6E2080162776E616D65637
D6E2070162776C6963747D6E20301627766C7D168BC19C2A276BA16C7D176BA1
33920100000000000001066BC176BA1C2A20D000074F6470276BA1D6E2080162
776E616D65637D6E204016277637D6E20301627769C2A290DA190DA1ED2A276B
A1A9CF168BC19C2A276BA16C7D176BA1933A1EF532B21305DF229C2A245632D6
E203016277697632B4402DE032D6E2030162776D6E204016277637D5CE1D6E20
4046F6E656908E19B632EF532B21305DF22EF532B21305BF22D9D201C432D6E2
040E616D656D6E2070162776C6963747E1632D6E2040E616D656B0BC1ED2A292
CF18B9C19C2A290DA1C58C1D6E2040E616D656C2A2031000A302E45656460276
BA1D6E2070162776C69637478B9C1B0BC176BA1C2A20D00000216277676BA13C
E22D6E2070162776C69637479C2A2D9AE1AFE22D9D20C2A20700003776BA1B21
305DF22933A1EF532B21305DF22B21305BF22D9D20C2A20D20003484B4142574
A302E4F60216277657D656E64737933A1B21305DF2293632B213001E8"
--------------------- End of CHKARG.ASC ---------------------
END_RDM
Finally here's an ASCed version of BCLK.
BEGIN_ASC bclk.asc
%%HP: T(3)A(D)F(.);
"69A20FF70E430000006045E414D454356047A20C2A20D0000255616C6C2A2031
00034F6D607C65687C2A201100035472796E676C2A2071000255616C61427271
697C2A20D100034F6D607C656871427271697C2A20D0000C4963747C2A209100
074C6F62616C6E416D656C2A2071000C4F63616C6E416D656C2A20310000527F
6762716D6C2A207100014C676562627169636C2A20110002496E6162797C2A20
9100074271607869636F426A6C2A2071000451676765646F426A6C2A20310005
5E69647F426A6C2A205100085C4962627162797C2A2071000449627563647F62
797C2A2031000C4962627162797C2A2071000241636B65707F426A6C2A205100
024C64794E664E636C2A205100024C64794E634D646C2A201100045970756230
3C2A2011000459707562313C2A2011000459707562323C2A2011000459707562
333C2A2011000459707562343C2A20D000034F64656B2130E920050554594D45
450D9D20E16329C2A2803A23013278BF1D6BB1DBBF13ABB13392020000000000
00010EEDA1C423233920200000000000001050FA176BA193632B213038000603
484B414257460D9D20E16323CE2244CF14B2A2D5CE1AFE22D9D203CE2292CF16
8BC14563284E2010859763268BC1279E192CF168BC147A20B213068BC1279E13
87E1AFE22D9D2044CF1ED2A290DA1E0CF1B0BC1ED2A292CF18B9C19C2A290DA1
C58C11C432D6E2070162776C6963747D6E204016277637D6E2040E616D656E16
323CE22D6E2070162776C69637478B9C1D6E204016277637D5CE1AFE22D9D20D
6E2040E616D656C2A2011000A30274F6470276BA1D6E204016277637B0BC176B
A1C2A20D00000216277676BA13CE22D6E2040162776379C2A2D9AE1AFE22D9D2
0C2A20700003776BA1B21305DF2233920100000000000001066BC176BA1C2A20
5100002020202020202029C2A2D6E2040E616D6568B9C1C58C176BA1C2A20310
000202E45656460276BA1D6E2070162776C69637478B9C1B0BC176BA1933A1B2
1305BF22D9D209C2A2D6E2070162776C69637478B9C14B2A21C432D6E2030162
776D6E204016277637D6E204046F6E656E16323C0323CE22D6E204016277637D
6E20301627769C2A290DA190DA1A9CF168BC1D6E2070162776C6963747D6E203
01627766C7D168BC1D9AE1AFE22D9D20CFA20100384E206045E416D6563704B0
21C432D6E2080162776E616D65637E1632D6E2040E616D656C2A2070000A376B
A1D6E2030162776B0BC176BA1C2A2031000A3027516E6470276BA1D6E2080162
776E616D65637D6E2070162776C6963747D6E20301627766C7D168BC19C2A276
BA16C7D176BA133920100000000000001066BC176BA1C2A20D000074F6470276
BA1D6E2080162776E616D65637D6E204016277637D6E20301627769C2A290DA1
90DA1ED2A276BA1A9CF168BC19C2A276BA16C7D176BA1933A1EF532B21305DF2
29C2A245632D6E203016277697632B4402DE032D6E2030162776D6E204016277
637D5CE1D6E204046F6E656908E19B632EF532B21305DF22EF532B21305BF22D
9D201C432D6E2040E616D656D6E2070162776C6963747E1632D6E2040E616D65
6B0BC1ED2A292CF18B9C19C2A290DA1C58C1D6E2040E616D656C2A2031000A30
2E45656460276BA1D6E2070162776C69637478B9C1B0BC176BA1C2A20D000002
16277676BA13CE22D6E2070162776C69637479C2A2D9AE1AFE22D9D20C2A2070
0003776BA1B21305DF22933A1EF532B21305DF22B21305BF22D9D20C2A20D200
03484B4142574A302E4F60216277657D656E64737933A1B21305DF2293632B21
30507006044947494453560E1B20B30102B200210008FF0008FF0008FF000700
70070070070070070070070070070070070E70070E70070E7007C17007C17007
C1700F30700F30700F307007007007007007007007007007007007007008FF00
08FF0008FF0000000000000000000000C10000C10000C10008F10008F10008F1
0000C10000C10000C10000C10000C10000C10000C10000C10000C10000C10000
C10000C10000C10000C10000C10000C10000C10000C10008FF0008FF0008FF00
00000000000000000008FF0008FF0008FF000700700700700700700700700700
70070070000E00000E00000E0000C10000C10000C10008300008300008300007
00000700000700000700000700000700000FFF700FFF700FFF70000000000000
00000008FF0008FF0008FF000700700700700700700000700000700000700000
7000007000007008FF0008FF0008FF0000007000007000007000007000007000
007007007007007007007008FF0008FF0008FF00000000000000000000000E00
000E00000E0000CF0000CF0000CF00083E00083E00083E00070E00070E00070E
000FFF700FFF700FFF70000E00000E00000E00000E00000E00000E00000E0000
0E00000E00000E00000E00000E000000000000000000000FFF700FFF700FFF70
0700000700000700000700000700000700000FFF000FFF000FFF000000700000
7000007000007000007000007000007000007000007007007007007007007008
FF0008FF0008FF0000000000000000000000CF0000CF0000CF00083000083000
0830000700000700000700000700000700000700000FFF000FFF000FFF000700
7007007007007007007007007007007007007007007007007008FF0008FF0008
FF000000000000000000000FFF700FFF700FFF70000070000070000070000070
000070000070000E00000E00000E0000C10000C10000C1000830000830000830
0008300008300008300008300008300008300008300008300008300000000000
000000000008FF0008FF0008FF00070070070070070070070070070070070070
07007007007007007008FF0008FF0008FF000700700700700700700700700700
7007007007007007007007007008FF0008FF0008FF0000000000000000000008
FF0008FF0008FF00070070070070070070070070070070070070070070070070
07007008FF7008FF7008FF70000070000070000070000070000070000070000E
00000E00000E0008F10008F10008F10000000000000000000008FF0008FF0008
FF00070070070070070070070070070070070070070E70070E70070E7007C170
07C17007C1700F30700F30700F30700700700700700700700700700700700700
7008FF0008FF0008FF0000000000000000000000C10000C10000C10008F10008
F10008F10000C10000C10000C10000C10000C10000C10000C10000C10000C100
00C10000C10000C10000C10000C10000C10000C10000C10000C10008FF0008FF
0008FF0000000000000000000008FF0008FF0008FF0007007007007007007007
0070070070070070000E00000E00000E0000C10000C10000C100083000083000
0830000700000700000700000700000700000700000FFF700FFF700FFF700000
0000000000000008FF0008FF0008FF0007007007007007007000007000007000
007000007000007000007008FF0008FF0008FF00000070000070000070000070
00007000007007007007007007007008FF0008FF0008FF000000000000000000
00000E00000E00000E0000CF0000CF0000CF00083E00083E00083E00070E0007
0E00070E000FFF700FFF700FFF70000E00000E00000E00000E00000E00000E00
000E00000E00000E00000E00000E00000E000000000000000000000FFF700FFF
700FFF700700000700000700000700000700000700000FFF000FFF000FFF0000
0070000070000070000070000070000070000070000070000070070070070070
07007008FF0008FF0008FF0000000000000000000008FF0008FF0008FF000700
70070070070070070070070070070070070E70070E70070E7007C17007C17007
C1700F30700F30700F307007007007007007007007007007007007007008FF00
08FF0008FF0000000000000000000000C10000C10000C10008F10008F10008F1
0000C10000C10000C10000C10000C10000C10000C10000C10000C10000C10000
C10000C10000C10000C10000C10000C10000C10000C10008FF0008FF0008FF00
00000000000000000008FF0008FF0008FF000700700700700700700700700700
70070070000E00000E00000E0000C10000C10000C10008300008300008300007
00000700000700000700000700000700000FFF700FFF700FFF70000000000000
00000008FF0008FF0008FF00070070070070070070070070070070070070070E
70070E70070E7007C17007C17007C1700F30700F30700F307007007007007007
007007007007007007007008FF0008FF0008FF0000000000000000000008FF00
08FF0008FF000700700700700700700000700000700000700000700000700000
7008FF0008FF0008FF0000007000007000007000007000007000007007007007
007007007008FF0008FF0008FF0000000000000000000008FF0008FF0008FF00
070070070070070070070070070070070070070E70070E70070E7007C17007C1
7007C1700F30700F30700F307007007007007007007007007007007007007008
FF0008FF0008FF00000000000000000000000000000000000000000000000000
00000008F10008F10008F10008F10008F10008F10000000000000000000008F1
0008F10008F10008F10008F10008F10000000000000000000000000000000000
0000000000000000000000005010403435544540C2A203300003132333435363
738393031323334353031323033303A34400080D4B444947494453580D9D20E1
6324563284E2080D4B44494749445359763247A20C2A20500004B2A24B2A2B21
3084E20603484B41425741C432D6E204036375647D6E204066F6E647D6E2040A
7F6F6D6E1632C2A207000085D6E204066F6E647DA5E18B9C1BB691DBBF1BB691
1C432D6E20308696E6D6E20307796E6E1632D6E20307796E6D6E2040A7F6F6D6
EEDA1B9691D6E20308696E6D6E2040A7F6F6D6EEDA1D6E2040363756478B9C1E
EDA1B9691614E19C2A2D6E2040363756478B9C10A132D6E201036D6E20403637
5647D6E201036D6E201036C58C19C2A2485A1E4A20510000000000000000000D
6E2010369C2A290DA1D6E20308696E6EEDA1D6E2040A7F6F6D6EEDA1B9691ED2
A2387C1D6E204036375647D6E201036D6E201036C58C1D6E204066F6E647DA5E
1D6E2040A7F6F6D684E2060249474745425AE8C1C42324563284E20604494749
4453597632DCC02D6E2040363756474563284E20403435544597632DCC02EF53
2EF53293632B2130BE2004034C4B42340D9D20E1632FD332D9D204563284E206
04494749445359763204B02B2130F1732D9D2084E2040343554453F2A23F2A28
4E2080D4B4449474944535B21305BF228DBF15DF2284E20604494749445358B9
C184E2040343554458B9C150FA1BB691DBBF1BB6914B2A21C432D6E201086D6E
201077D6E204046F6E656E1632E4A20510003800000000000000E4A205100004
00000000000000614E1634E1DCC0247A20E4A20510000000000000000000E4A2
0510000000000000000000B21300F2E13C0327F7911C432D6E20404796D656E1
632D6E20404796D65684E2050554594D454D6E20404796D65633920100000000
000001050FA1D6BB1D6E20404796D656339201000000000000010D4EB1D6BB1D
6E20404796D656339201000000000000010EEDA1339201000000000000010D4E
B1D6BB1D6E20404796D656339202000000000000010EEDA13392010000000000
00010D4EB1D6BB1339202000000000001310D6E201077D13A2EEDA190DA1ED2A
250FA1B9691339201000000000000460D6E20108690DA1ED2A250FA1B96911C4
32D6E20208686D6E2020D6D6D6E20203737D6E20204747D6E2030861303D6E20
208613D6E2030D61303D6E2020D613D6E201087D6E201097E1632E4A20510003
800000000000000E4A20510000400000000000000614E1D6E201087D6E201097
ED2A2387C184E2060449474944535E4A20510000000000000000000E4A205100
00000000000000000D6E2030861303D6E201086EEDA176BA1ED2A2387C178BF1
B7FC18DBF1D6E20108676BA19C2A290DA1DBBF1D6E20107776BA19C2A290DA1D
BBF1ED2A2387C1C58C1AE8C1D6E201087D6E20107776BA145632D6E201087976
32DCC02D6E201087D6E201097ED2A2387C184E2060449474944535E4A2051000
0000000000000000E4A20510000000000000000000D6E20208613D6E201086EE
DA176BA1ED2A2387C178BF1B7FC18DBF1D6E20108676BA19C2A290DA1DBBF1D6
E20107776BA19C2A290DA1DBBF1ED2A2387C1C58C1AE8C1D6E201087D6E20107
776BA145632D6E20108797632DCC02D6E201087D6E201097ED2A2387C184E206
0449474944535E4A2051000000000000000000084E2040343554458B9C19C2A2
90DA1D6E201086EEDA1B9691ED2A2387C178BF1B7FC18DBF1D6E20108676BA19
C2A290DA1DBBF1D6E20107776BA19C2A290DA1DBBF1ED2A2387C1C58C1AE8C1D
6E201087D6E20107776BA145632D6E20108797632DCC02D6E201087D6E201097
ED2A2387C184E2060449474944535E4A20510000000000000000000E4A205100
00000000000000000D6E2030D61303D6E201086EEDA176BA1ED2A2387C178BF1
B7FC18DBF1D6E20108676BA19C2A290DA1DBBF1D6E20107776BA19C2A290DA1D
BBF1ED2A2387C1C58C1AE8C1D6E201087D6E20107776BA145632D6E201087976
32DCC02D6E201087D6E201097ED2A2387C184E2060449474944535E4A2051000
0000000000000000E4A20510000000000000000000D6E2020D613D6E201086EE
DA176BA1ED2A2387C178BF1B7FC18DBF1D6E20108676BA19C2A290DA1DBBF1D6
E20107776BA19C2A290DA1DBBF1ED2A2387C1C58C1AE8C1634E1DBBF147A20E4
A20510000000000000000000E4A20510000000000000000000B2130DBBF1AE8C
1330327F7913ABB1339202000000000000010EEDA1D6BB1D6E2020D6D6279E1D
6E204046F6E656F88E1387E1D5032D9D20634E147A20E4A20510000000000000
000000E4A20510000000000000000000B21307F791339202000000000000010E
EDA13ABB1339202000000000000010EEDA1D6BB1B0BC19C2A2DA5E1AE8C13CE2
2378A1AFE22D9D208DBF19C2A245632D6E204046F6E65697632DCC02B21305DF
22B213049632EF532EF532DE032D6E204046F6E6569B632EF53293632B21309E
A004034C4B41340D9D20E1632FD332D9D204563284E206044947494453597632
04B02B2130F1732D9D2084E2040343554453F2A23F2A284E2080D4B444947494
4535B21305BF228DBF15DF2284E20604494749445358B9C184E2040343554458
B9C150FA1BB691DBBF1BB6911C432D6E201086D6E201077E1632E4A205100038
00000000000000E4A20510000400000000000000614E1634E1DCC0247A20E4A2
0510000000000000000000E4A20510000000000000000000B21300F2E13C0327
F7911C432D6E20404796D656E1632D6E20404796D65684E2050554594D454D6E
20404796D65633920100000000000001050FA1D6BB1D6E20404796D656339201
000000000000010D4EB1D6BB1D6E20404796D656339201000000000000010EED
A1339201000000000000010D4EB1D6BB1D6E20404796D6563392020000000000
00010EEDA1339201000000000000010D4EB1D6BB1339202000000000001310D6
E201077D13A2EEDA190DA1ED2A250FA1B9691339201000000000000460D6E201
08690DA1ED2A250FA1B96911C432D6E20208686D6E2020D6D6D6E20203737D6E
20204747D6E2030861303D6E20208613D6E2030D61303D6E2020D613D6E20108
7D6E201097E1632E4A20510003800000000000000E4A20510000400000000000
000614E1D6E201087D6E201097ED2A2387C184E2060449474944535E4A205100
00000000000000000E4A20510000100000000000000D6E201086EEDA1D6E2030
861303D6E201086EEDA176BA13CE22D6E2020868633920100000000000032027
9E1D6E20208613173A2279E1908E1D6E2030D61303D13A2279E1387E1D6E2020
D613173A2279E1387E1AFE22D9D20D6E201086D6E20203737339201000000000
00006050FA1EEDA176BA1B21305DF22ED2A2387C178BF1B7FC18DBF1D6E20108
676BA19C2A290DA1DBBF1D6E20107776BA19C2A290DA1DBBF1ED2A2387C1C58C
1AE8C1D6E201087D6E20107776BA145632D6E20108797632DCC02D6E201087D6
E201097ED2A2387C184E2060449474944535E4A205100000000000000000003C
E22D6E20208686339201000000000000320279E1D6E2020D6D63392010000000
00000950279E1387E1AFE22E4A205100011000000000000005BF22E4A2051000
00000000000000005DF22D6E201086EEDA1D6E20208613D6E201086EEDA176BA
13CE22D6E2030D61303D13A2279E1D6E2020D613173A2279E1387E1AFE22D9D2
0D6E201086D6E2020373733920100000000000006050FA1EEDA176BA1B21305D
F22ED2A2387C178BF1B7FC18DBF1D6E20108676BA19C2A290DA1DBBF1D6E2010
7776BA19C2A290DA1DBBF1ED2A2387C1C58C1AE8C1D6E201087D6E20107776BA
145632D6E20108797632DCC02D6E201087D6E201097ED2A2387C184E20604494
74944535E4A20510000000000000000000D6E20108684E2040343554458B9C19
C2A290DA1EEDA1B9691ED2A2387C178BF1B7FC18DBF1D6E20108676BA19C2A29
0DA1DBBF1D6E20107776BA19C2A290DA1DBBF1ED2A2387C1C58C1AE8C1D6E201
087D6E20107776BA145632D6E20108797632DCC02D6E201087D6E201097ED2A2
387C184E2060449474944535E4A20510000000000000000000E4A2051000A000
000000000000D6E201086EEDA1D6E2030D61303D6E201086EEDA176BA13CE22D
6E2020D613173A2279E1AFE22D9D20D6E201086D6E2020373733920100000000
000006050FA1EEDA176BA1B21305DF22ED2A2387C178BF1B7FC18DBF1D6E2010
8676BA19C2A290DA1DBBF1D6E20107776BA19C2A290DA1DBBF1ED2A2387C1C58
C1AE8C1D6E201087D6E20107776BA145632D6E20108797632DCC02D6E201087D
6E201097ED2A2387C184E2060449474944535E4A20510000000000000000000E
4A20510000000000000000000D6E201086EEDA1D6E2020D613D6E201086EEDA1
76BA1D6E201086D6E2020373733920100000000000006050FA1EEDA176BA1ED2
A2387C178BF1B7FC18DBF1D6E20108676BA19C2A290DA1DBBF1D6E20107776BA
19C2A290DA1DBBF1ED2A2387C1C58C1AE8C1634E1DBBF147A20E4A2051000000
0000000000000E4A20510000000000000000000B2130DBBF1AE8C1EF532EF532
DE032378A19B6328DBF1EF53293632B213002C006024947474542560D9D20E16
324563284E20602494747454259763247A20E1B20110001000010000004B2A2B
213084E20603484B414257492CF18B9C1BB691DBBF1BB691DBBF11C432D6E205
0F67627F626D6E2010A7D6E201077D6E201086E1632D6E201077D6E2010A7EED
A1B9691D6E201086D6E2010A7EEDA1B9691614E1D6E2010A7B969178BF1614E1
599A11C432D6E203026C6B6E16324B2A2D6E2010779C2A290DA10A132D6E2010
873CE22D6E2050F67627F626D6E201087B9691E4A20510000000000000000000
ED2A2387C1D6E201087B9691D6E201086B9691ED2A2387C1C58C1E4A20510001
000000000000000D6E201086B9691614E1D9AE1AFE22D9D204B2A2D6E2010869
C2A290DA10A132D6E2010973CE22D6E2050F67627F626D6E201087B9691D6E20
1097B9691ED2A2387C178BF1C58C1E1B2011000100001000010279E1AFE22D9D
20D6E201087D6E2010A7EEDA1B9691D6E201097D6E2010A7EEDA1B9691ED2A23
87C1D6E203026C6B6AE8C1B21305DF22C4232B21305DF22C4232EF532EF53293
632B21306594"
END_ASC
BYTES: #4956h 7180.5
BEGIN_UU bclk.uue
begin 644 bclk
M2%!(4#0X+466*O!_X#0````&5$Y!3453!G0JP*("#0`@51;&QJ("$P`P]-8&
MQU:&QZ("$0`P12>7YG;&H@(7`"!5%L86)"<7EL>B`AT`,/36!L=6AA<D)Q>6
MQZ("#0#`E#9'QZ("&0!PQ/8F%L;F%-96QJ("%P#`]#86QN84UE;&H@(3```E
M]W8F%];&H@(7`!#$=E8F)A>6-L:B`A$`()3F%B:7QZ("&0!P)!<&AY8V]B2F
MQJ("%P!`%79V5D;V)*;&H@(3`%#EED;W)*;&H@(5`(#%E"8F%R:7QZ("%P!`
ME"97-D;W)I?'H@(3`,"4)B87)I?'H@(7`"`4-K96!_<DIL:B`A4`(,1&E^1F
MY#;&H@(5`"#$1I?D-M1&QJ("$0!`E0=7)@/#H@(1`$"5!U<F$\.B`A$`0)4'
M5R8CPZ("$0!`E0=7)C/#H@(1`$"5!U<F0\.B`@T`,/1&5K82`YX"4%!%E=14
M5-#9`AXVDBPJ"*,R$".'^]&V&[W[,;H;,RD@````````$.#>&DPR,I,"`@``
M``````$%KW&V&CDVLA(#@P!@,(2T%"1U9-#9`AXV,NPB1/Q!*RI=[*'O(ITM
M,.PB*?QAN!Q4-H+D`@%8>39BN!QRZ9'"'X;+0:<"*S%@N!QRZ3%X'OHNTMD"
M1/SA+2H)K>'`'PO+X2TJ*?R!FQS)HI+0&ES($4PC;2YP$"9WQI8V1]?F`@1A
M<F=S;2Y`X!;65N9A(\,NTN8"!V%R9VQI<W2XR='F`@1A<F=S7>RA[R*=+=#F
M`@1N86UE+"H0`0`Z($=O="!GJ]'F`@1A<F=S"\MQMAHL*M```"!A<F=GJS'L
M(FTN0!`F=S:7+"J=ZJ'O(ITMP*("!P`P=[8:*S%0_2(S*1`````````08+8<
M9ZO!H@(5```"`@("`@("DBPJ;2Y`X!;65H:;'%S(<;8:+"HP`0`@($YE960@
M9ZO1Y@('87)G;&ES=+C)L;`<9ZN1,QHK,5#[(ITMD"PJ;2YP$"9WQI8V1X>;
M'+2B$DPC;2XP$"9WUN8"!&%R9W-M+D!`]N96YF$CPS`R[")M+D`0)G<VU^8"
M`V%R9\FBDM`:":VAR1^&R]'F`@=A<F=L:7-T;2XP$"9W9GP=ALO1J1[Z+M+9
M`OPJ$`"#Y`(&5$YA;65S0`L23"-M+H`0)G?F%M96-N=A(VTN0.`6UE;&H@('
M`*!SMAIM+C`0)G>VL!QGJ\&B`A,`H`-R%>9&!W*V&FTN@!`F=^86UE8VU^8"
M!V%R9VQI<W1M+C`0)G=F?!V&RY$L*F>K87P=9ZLQDP(!`````````6;+<;8:
M+"K0``!';W0@9ZO1Y@((87)G;F%M97-M+D`0)G<VU^8"`V%R9\FBDM`:":WA
M+2IGJZ')'X;+D2PJ9ZMA?!UGJY$S&OXULA(#U2^2+"I4-M+F`@-A<F=Y-K)$
M(.TPTN8"`V%R9VTN0!`F=S;7Q1YM+D!`]N96EH`>N3;B7R,K,5#](OXULA(#
MM2_2V0+!--+F`@1N86UE;2YP$"9WQI8V1^=A(VTN0.`6UE:VL!S>HI+"'[C)
MD2PJ":W!A1QM+D#@%M96QJ("$P"@`^)45D8&<K8:;2YP$"9WQI8V1X>;'`O+
M<;8:+"K0```@87)G9ZLQ[")M+G`0)G?&EC9'ERPJG>JA[R*=+<"B`@<`,'>V
M&BLQ4/TB.:/A7R,K,5#](BLQ4/LBG2W`H@(M`#"$M!0D=:0#XO0&$B9W5M=6
MYD8WES,:*S%0_2(Y-K(2`P4'8$"4=)1$-67@L0([$"`K`!(`@/\`@/\`@/\`
M<``'<``'<``'<``'<``'<``'<.`'<.`'<.`'<!P'<!P'<!P'\`,'\`,'\`,'
M<``'<``'<``'<``'<``'<``'@/\`@/\`@/\``````````````!P``!P``!P`
M@!\`@!\`@!\``!P``!P``!P``!P``!P``!P``!P``!P``!P``!P``!P``!P`
M`!P``!P``!P``!P``!P``!P`@/\`@/\`@/\`````````````@/\`@/\`@/\`
M<``'<``'<``'<``'<``'<``'`.```.```.```!P``!P``!P`@`,`@`,`@`,`
M<```<```<```<```<```<```\/\'\/\'\/\'````````````@/\`@/\`@/\`
M<``'<``'<``'```'```'```'```'```'```'@/\`@/\`@/\````'```'```'
M```'```'```'<``'<``'<``'@/\`@/\`@/\``````````````.```.```.``
M`/P``/P``/P`@.,`@.,`@.,`<.``<.``<.``\/\'\/\'\/\'`.```.```.``
M`.```.```.```.```.```.```.```.```.``````````````\/\'\/\'\/\'
M<```<```<```<```<```<```\/\`\/\`\/\````'```'```'```'```'```'
M```'```'```'<``'<``'<``'@/\`@/\`@/\``````````````/P``/P``/P`
M@`,`@`,`@`,`<```<```<```<```<```<```\/\`\/\`\/\`<``'<``'<``'
M<``'<``'<``'<``'<``'<``'@/\`@/\`@/\`````````````\/\'\/\'\/\'
M```'```'```'```'```'```'`.```.```.```!P``!P``!P`@`,`@`,`@`,`
M@`,`@`,`@`,`@`,`@`,`@`,`@`,`@`,`@`,`````````````@/\`@/\`@/\`
M<``'<``'<``'<``'<``'<``'<``'<``'<``'@/\`@/\`@/\`<``'<``'<``'
M<``'<``'<``'<``'<``'<``'@/\`@/\`@/\`````````````@/\`@/\`@/\`
M<``'<``'<``'<``'<``'<``'<``'<``'<``'@/\'@/\'@/\'```'```'```'
M```'```'```'`.```.```.``@!\`@!\`@!\`````````````@/\`@/\`@/\`
M<``'<``'<``'<``'<``'<``'<.`'<.`'<.`'<!P'<!P'<!P'\`,'\`,'\`,'
M<``'<``'<``'<``'<``'<``'@/\`@/\`@/\``````````````!P``!P``!P`
M@!\`@!\`@!\``!P``!P``!P``!P``!P``!P``!P``!P``!P``!P``!P``!P`
M`!P``!P``!P``!P``!P``!P`@/\`@/\`@/\`````````````@/\`@/\`@/\`
M<``'<``'<``'<``'<``'<``'`.```.```.```!P``!P``!P`@`,`@`,`@`,`
M<```<```<```<```<```<```\/\'\/\'\/\'````````````@/\`@/\`@/\`
M<``'<``'<``'```'```'```'```'```'```'@/\`@/\`@/\````'```'```'
M```'```'```'<``'<``'<``'@/\`@/\`@/\``````````````.```.```.``
M`/P``/P``/P`@.,`@.,`@.,`<.``<.``<.``\/\'\/\'\/\'`.```.```.``
M`.```.```.```.```.```.```.```.```.``````````````\/\'\/\'\/\'
M<```<```<```<```<```<```\/\`\/\`\/\````'```'```'```'```'```'
M```'```'```'<``'<``'<``'@/\`@/\`@/\`````````````@/\`@/\`@/\`
M<``'<``'<``'<``'<``'<``'<.`'<.`'<.`'<!P'<!P'<!P'\`,'\`,'\`,'
M<``'<``'<``'<``'<``'<``'@/\`@/\`@/\``````````````!P``!P``!P`
M@!\`@!\`@!\``!P``!P``!P``!P``!P``!P``!P``!P``!P``!P``!P``!P`
M`!P``!P``!P``!P``!P``!P`@/\`@/\`@/\`````````````@/\`@/\`@/\`
M<``'<``'<``'<``'<``'<``'`.```.```.```!P``!P``!P`@`,`@`,`@`,`
M<```<```<```<```<```<```\/\'\/\'\/\'````````````@/\`@/\`@/\`
M<``'<``'<``'<``'<``'<``'<.`'<.`'<.`'<!P'<!P'<!P'\`,'\`,'\`,'
M<``'<``'<``'<``'<``'<``'@/\`@/\`@/\`````````````@/\`@/\`@/\`
M<``'<``'<``'```'```'```'```'```'```'@/\`@/\`@/\````'```'```'
M```'```'```'<``'<``'<``'@/\`@/\`@/\`````````````@/\`@/\`@/\`
M<``'<``'<``'<``'<``'<``'<.`'<.`'<.`'<!P'<!P'<!P'\`,'\`,'\`,'
M<``'<``'<``'<``'<``'<``'@/\`@/\`@/\`````````````````````````
M````````````@!\`@!\`@!\`@!\`@!\`@!\`````````````@!\`@!\`@!\`
M@!\`@!\`@!\```````````````````````````````````````4!!$-3150$
M+"HP`P`P,3(S-#4V-S@Y,#$R,S0U,#$R,#,P.D0`@-"T1)1TE$0UA=#9`AXV
M0F4C2"Z`T+1$E'241#659R-T*L"B`@4`0"LJM**R$@-(+F`PA+04)'443"-M
M+D`P-E=&U^8"!&9O;G1M+D"@]_;6YF$C+"IP``!8;2Y`8/;F1M=:'KC)L6L9
MO?NQ:QG!--+F`@-H:6YM+C!PE^;F82-M+C!PE^;6Y@($>F]O;>ZML6D9;2XP
M@);FUN8"!'IO;VWNK='F`@1C<V5TN,GAWAJ;EF%!'LFBTN8"!&-S972XR0$:
M(VTN$##6Y@($8W-E=&TN$##6Y@(!8US(D2PJA*7AI`(5````````````T.8"
M`6/)HI+0&FTN,("6YN;>&FTN0*#W]M;FWAJ;EN$M*H/'T>8"!&-S971M+A`P
MUN8"`6-<R-'F`@1F;VYTK>71Y@($>F]O;4@N8""4='14)*6.'$PR0F4C2"Y@
M0)1TE$0UE6<CS0S2Y@($8W-E=%0V@N0"!$-3151Y-M+,(/XUXE\C.3:R$@/K
M`D`PQ+0D0]#9`AXV\CTCG2U`92-(+F!`E'241#659R-`"[(2`Q\WTMD"2"Y`
M,#151#4O*O.B@N0""$U+1$E'2513*S%0^R+8^U'](D@N8$"4=)1$-86;'$@N
M0#`T542%FQP%K[%K&;W[L6L9M*(23"-M+A"`UN8"`7=M+D!`]N96YF$C3BI0
M`0"#`````````$XJ4`$`0``````````6Y&%#'LT,0J<"3BI0`0``````````
M`$XJ4`$````````````K,0`O'L,P<G\9P332Y@($=&EM91XVTN8"!'1I;65(
M+E!019745-3F`@1T:6UE,RD0````````$%#P&FV[T>8"!'1I;64S*1``````
M```0T.0;;;O1Y@($=&EM93,I$````````!#@WAHS*1`````````0T.0;;;O1
MY@($=&EM93,I(````````!#@WAHS*1`````````0T.0;;;LQDP("```````Q
M`6TN$'#7,2KNK9'0&MZB4O`:FY8QDP(!``````!`!FTN$("6T!K>HE+P&IN6
M$4PC;2X@@(;6Y@(";6UM+B`P-]?F`@)T=&TN,(`6`]/F`@)H,6TN,-`6`]/F
M`@)M,6TN$(#7Y@(!>1XVXJ0"%0`P"````````."D`A4```0```````!@01YM
M+A"`U^8"`7G>HC)X'$@N8$"4=)1$->6D`A4```````````#@I`(5````````
M````T.8"`V@Q,&TN$(#FWAIGJ^$M*H/'<;@?>\^!O1]M+A"`=K8:R:*2T!J]
M^]'F`@%W9ZN1+"H)K=&[']ZB,G@<7,BACAQM+A"`U^8"`7=GJT%E(VTN$("7
M9R/-#-+F`@%X;2X0D.<M*H/'@>0"!D1)1TE44TXJ4`$```````````!.*E`!
M````````````;2X@@!;3Y@(!:.ZM<;8:WJ(R>!R'^['W'-C[T>8"`6AGJY$L
M*@FMT;L?;2X0<'>V&LFBDM`:O?OA+2J#Q\&%'.K(T>8"`7AM+A!P=[8:5#;2
MY@(!>'DVTLP@;2X0@-?F`@%YWJ(R>!Q(+F!`E'241#7EI`(5````````````
M@.0"!$-3152XR9$L*@FMT>8"`6CNK;%I&=ZB,G@<A_NQ]QS8^]'F`@%H9ZN1
M+"H)K=&['VTN$'!WMAK)HI+0&KW[X2TJ@\?!A1SJR-'F`@%X;2X0<'>V&E0V
MTN8"`7AY-M+,(&TN$(#7Y@(!>=ZB,G@<2"Y@0)1TE$0UY:0"%0``````````
M`."D`A4```````````#0Y@(#;3$P;2X0@.;>&F>KX2TJ@\=QN!][SX&]'VTN
M$(!VMAK)HI+0&KW[T>8"`7=GJY$L*@FMT;L?WJ(R>!Q<R*&.'&TN$(#7Y@(!
M=V>K064C;2X0@)=G(\T,TN8"`7AM+A"0YRTJ@\>!Y`(&1$E'25133BI0`0``
M`````````$XJ4`$```````````!M+B#0%M/F`@%H[JUQMAK>HC)X'(?[L?<<
MV/O1Y@(!:&>KD2PJ":W1NQ]M+A!P=[8:R:*2T!J]^^$M*H/'P84<ZLAA0QZ]
M^T&G`DXJ4`$```````````!.*E`!````````````*S'0NQ_JR#$#(_>7,;H;
M,RD@````````$.#>&FV[T>8"`FUM<NG1Y@($9&]N98_H,7@>73#2V0(VY$&G
M`DXJ4`$```````````!.*E`!````````````*S%P?QDS*2`````````0X-X:
MH[LQDP("`````````>ZMT;8;"\N1+"JMY:&.',,N,H<:^B[2V0+8^Y$L*E0V
MTN8"!&1O;F5Y-M+,("LQ4/TB*S%`:2/^->)?(^TPTN8"!&1O;F6Y-N)?(SDV
MLA(#Z0I`,,2T%$/0V0(>-O(](YTM0&4C2"Y@0)1TE$0UE6<C0`NR$@,?-]+9
M`D@N0#`T540U+RKSHH+D`@A-2T1)1TE44RLQ4/LBV/M1_2)(+F!`E'241#6%
MFQQ(+D`P-%5$A9L<!:^Q:QF]^[%K&<$TTN8"`6AM+A!PYV$C3BI0`0"#````
M`````$XJ4`$`0``````````6Y&%#'LT,0J<"3BI0`0```````````$XJ4`$`
M```````````K,0`O'L,P<G\9P332Y@($=&EM91XVTN8"!'1I;65(+E!01974
M5-3F`@1T:6UE,RD0````````$%#P&FV[T>8"!'1I;64S*1`````````0T.0;
M;;O1Y@($=&EM93,I$````````!#@WAHS*1`````````0T.0;;;O1Y@($=&EM
M93,I(````````!#@WAHS*1`````````0T.0;;;LQDP("```````Q`6TN$'#7
M,2KNK9'0&MZB4O`:FY8QDP(!``````!`!FTN$("6T!K>HE+P&IN6$4PC;2X@
M@(;6Y@(";6UM+B`P-]?F`@)T=&TN,(`6`]/F`@)H,6TN,-`6`]/F`@)M,6TN
M$(#7Y@(!>1XVXJ0"%0`P"````````."D`A4```0```````!@01YM+A"`U^8"
M`7G>HC)X'$@N8$"4=)1$->6D`A4```````````#@I`(5```!````````T.8"
M`6CNK='F`@-H,3!M+A"`YMX:9ZLQ[")M+B"`AC:3`@$``````#`"<NG1Y@("
M:#%QHR*7'@GHT>8"`VTQ,!VC(I<>@^?1Y@(";3%QHR*7'H/GH>\BG2W0Y@(!
M:&TN(#`W-Y,"`0````````8%K^'>&F>KL1(#U2_B+2J#QW&X'WO/@;T?;2X0
M@':V&LFBDM`:O?O1Y@(!=V>KD2PJ":W1NQ_>HC)X'%S(H8X<;2X0@-?F`@%W
M9ZM!92-M+A"`EV<CS0S2Y@(!>&TN$)#G+2J#QX'D`@9$24=)5%-.*E`!````
M````````PR[2Y@(":&@S*1`````````C()<>;2X@T-8VDP(!``````"0!7+I
M,7@>^B[BI`(5`!`!````````4/LB3BI0`0```````````-4OTN8"`6CNK='F
M`@)H,6TN$(#FWAIGJS'L(FTN,-`6`],Q*G+IT>8"`FTQ<:,BEQZ#YZ'O(ITM
MT.8"`6AM+B`P-S>3`@$````````&!:_AWAIGJ[$2`]4OXBTJ@\=QN!][SX&]
M'VTN$(!VMAK)HI+0&KW[T>8"`7=GJY$L*@FMT;L?WJ(R>!Q<R*&.'&TN$(#7
MY@(!=V>K064C;2X0@)=G(\T,TN8"`7AM+A"0YRTJ@\>!Y`(&1$E'25133BI0
M`0```````````&TN$("&Y`($0U-%5+C)D2PJ":WAWAJ;EN$M*H/'<;@?>\^!
MO1]M+A"`=K8:R:*2T!J]^]'F`@%W9ZN1+"H)K=&[']ZB,G@<7,BACAQM+A"`
MU^8"`7=GJT%E(VTN$("79R/-#-+F`@%X;2X0D.<M*H/'@>0"!D1)1TE44TXJ
M4`$```````````!.*E`!``H`````````;2X0@.;>&FTN,-`6`]/F`@%H[JUQ
MMAK#+M+F`@)M,7&C(I<>^B[2V0)M+A"`UN8"`G-S,RD0````````8%#P&NZM
M<;8:*S%0_2+>HC)X'(?[L?<<V/O1Y@(!:&>KD2PJ":W1NQ]M+A!P=[8:R:*2
MT!J]^^$M*H/'P84<ZLC1Y@(!>&TN$'!WMAI4-M+F`@%X>3;2S"!M+A"`U^8"
M`7G>HC)X'$@N8$"4=)1$->6D`A4```````````#@I`(5````````````T.8"
M`6CNK='F`@)M,6TN$(#FWAIGJ]'F`@%H;2X@,#<WDP(!````````!@6OX=X:
M9ZOA+2J#QW&X'WO/@;T?;2X0@':V&LFBDM`:O?O1Y@(!=V>KD2PJ":W1NQ_>
MHC)X'%S(H8X<-N31NQ]T*N"D`A4```````````#@I`(5````````````L!(#
MO?NACAS^->)?(^TP,H<:N3:"O1_^-9)C(RLQ`,(`!D))1T=%4@:=+>!A(U0V
M@N0"!D))1T=%4GDV0J<"'BL0`0`!`!````"THK(2`T@N8#"$M!0D=93"'[C)
ML6L9O?NQ:QF]^Q%,(VTN4/!V)O<FUN8"`7IM+A!PU^8"`6@>-M+F`@%W;2X0
MH.?>&IN6T>8"`6AM+A"@Y]X:FY9A01YM+A"@MVD9A_MA01Z5J1%,(VTN,"#&
MMN9A([2BTN8"`7?)HI+0&J`QTN8"`7C#+M+F`@5O9W)O8FTN$("W:1E.*E`!
M````````````WJ(R>!QM+A"`MVD9;2X0@+9I&=ZB,G@<7,CAI`(5`!``````
M````T.8"`6B;EF%!'IWJH>\BG2U`*RIM+A"`EBPJ":T!&B-M+A"0-^PB;2Y0
M\'8F]R;6Y@(!>)N6T>8"`7F;EN$M*H/'<;@?7,CAL0(1`!````$`$""7'OHN
MTMD";2X0@-?F`@%Z[JVQ:1EM+A"0U^8"`7KNK;%I&=ZB,G@<;2XP(,:VIHX<
9*S%0_2),,K(2`]4OPB0C_C7B7R,Y-K(2`[(2
`
end
END_UU
--
john.Latala@Waterloo.NCR.COM
/EARTH is 90% full, please delete anything superfluous...